The assignee of the present invention has previously developed a portable interactive diagnostic tester for fault isolation in complex electromechanical systems called POINTER. POINTER utilizes a model-based, matriximplemented inferential reasoning method of diagnostic analysis. The diagnostic model is created using the STAMP (System Testability and Maintenance Program) program also available from the assignee of the present invention, ARINC Research Corporation. STAMP is an interactive modeling tool designed to permit analysis of the testability of a system and generation of static fault isolation strategies. STAMP assumes that the system design is known, tests can be specified that measure the goodness and badness of system elements, and sequences of test outcomes can be used to localize or isolate failed system elements. The STAMP diagnostic model describes the flow of information through a system to be diagnosed. The information flow is represented as a set of diagnostic tests (information sources), a set of diagnoses (conclusions to be drawn), and a set of logical relationships between the tests and the conclusions. In addition, the model includes parameters for weighting a test selection optimization process, grouping tests and conclusions, and specifying types of tests to be performed (e.g. functional tests, conditional tests, or asymmetric tests). Under the STAMP methodology, an assumption is made that only one fault exists or that specific multiple faults can be specified and treated as a single fault, and thus that only one conclusion is true for any one diagnostic analysis. (If the system under test actually has multiple faults, they can usually be successively isolated by repeating the diagnostic analysis, unless a "hidden" failure causes the failure which is isolated or a multiple failure looks like an independent single failure.) Evidence from an individual test flows to a set or sets of diagnostic conclusions as either support or denial evidence in accordance with the defined logical relationships. That is, a logical proposition consisting of a set of dependency, or support, functions is established or defined which identifies the conclusions related to a given test and allocates the evidence generated by a test measurement to the set of related conclusions. An example of a higher-order proposition relating a test t.sub.5 to a set of conclusions c.sub.1, c.sub.2, . . . c.sub.n is:
______________________________________ If (t.sub.5) then c.sub.1 or c.sub.2 or . . . c.sub.n implication If (.sup..about. c.sub.1 and .sup..about. c.sub.2 and .sup..about.. . . c.sub.n) then .sup..about. t.sub.5 negation If (.sup..about. t.sub.5) then .sup..about. c.sub.1 and .sup..about. c.sub.2 and . . . .sup..about. c.sub.n symmetry ______________________________________
Each unique test has two different support functions, one for each type of evidence (support or denial). There is thus a set of conclusions that are supported and a set of conclusions that are denied by a given test outcome. That is, every conclusion in the model is supported or denied by each test outcome. A test supports a conclusion when the test outcome is consistent with a conclusion value of true. A test denies a conclusion when its outcome is not consistent with a conclusion value of true. In addition, component-to-component dependencies in the system are not modelled, and thus an assumption is made that the evidence for a given conclusion is determined solely by the tests that are related to it, not by other conclusions that may resemble its component parts.
The test measurement results are evaluated and specified as indicating that the tested system element is "Good," "Bad" or "Unknown" (results not available). A Bad test outcome is equated to be a logically True value of the proposition that corresponds to the test; and a Good test outcome equates to a logically False value of the corresponding test proposition. In the example given above, testing would evaluate the outcome of t.sub.5, and then the truth or falsity of other propositions and conclusions are inferred using the applicable set of support functions. Thus, the STAMP process can be generally described as solving a set membership problem. If a given test is Bad, it implies one of n higher-order causes. If another test is Good, it implies that all of the potential causes of its being Bad are not possible conclusions, so that the complementary set (all potential causes that are still possible) is possible. STAMP operates to ascertain the intersections of the possible conclusion sets.
The STAMP paradigm has proven successful in solving a large number of testability and fault-isolation problems. However, many important problem domains involve uncertainty in both the statements of relation between tests and conclusions and the interpretation of the test measurements. For example, the model assumes that the relationships between the information sources and the diagnostic conclusions are clearly discernible, well defined, and unambiguous. It may not be possible, though, to establish a model which is both accurate and complete, i.e., a model in which each conclusion is properly related to each test result, and all of the conclusions which should be related to a test result are specified. Further, the test information may be ambiguous, difficult to interpret, or the user doing the testing and interpreting may have inadequate skill levels to produce reliable test results. Thus, an indicator is needed which measures how well the modelled relations are fitting the problem to which they are being applied. A number of different approaches have been developed in the artificial intelligence field to deal with the uncertainty created by these problems. Generally referred to as "reasoning under uncertainty," examples of such approaches include the use of certainty factors, probabilistic reasoning and weighted causal networks. In addition, there are various logics that take into account aspects of uncertainty such as predicate calculus, multivalued logics, modal logics, non-monotonic reasoning, intuitional logic, truth maintenance, "fuzzy" logic, and Dempster-Shafer evidential reasoning.
However, it is difficult in general to integrate reasoning under uncertainty concepts with the massive structure and processes associated with a complex, matrix-implemented inferential reasoning process like STAMP. Further, although the Dempster-Shafer evidential reasoning approach is well adapted for use in an inferential diagnostic process like STAMP, even this approach to dealing with uncertainty creates a number of serious problems. First, while a purely inferential form of STAMP provides a very good method for optimizing the choice of the next test to maximize the efficiency of the diagnostic process, this method breaks down when an evidential reasoning approach is adopted. Heretofore, the problem of test selection has not been addressed in the field of evidence combination. Second, the process of identifying the conclusions, observations and relationships that should be involved in a given evidential diagnostic process is much more difficult than with a strictly inferential process. Third, the Dempster-Shafer technique is flawed in the way it handles total uncertainty. If any test is performed that provides any evidence in support of some conclusion, then uncertainty is reduced--even in the event of a conflict with known information. Ultimately, as further testing is conducted, uncertainty disappears altogether, independent of the test results. Fourth, applying uncertainty calculations to an inferential system makes the criteria for determining when a diagnostic conclusion may be properly drawn unclear. There is thus a need to determine at what point enough information has been gathered to declare a valid diagnosis, or, in the context of fault isolation, to determine the point at which additional testing is providing minimal useful new information.